﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Media;
using System.Xml.Serialization;
using FM.时钟.接口;
using Microsoft.Practices.Prism.Mvvm;

namespace FM.时钟.Models
{
    public class 数据 : BindableBase, I数据
    {
        private string _显示文字;
        private string _时间格式;
        private string _字体名称;
        private double _字体大小;
        private bool _定时刷新;
        private int _定时刷新毫秒;
        private SolidColorBrush _字体颜色;
        private string _显示名称 = "第一行";

        public 数据()
        {
            时间格式 = "HH:mm:ss";
            字体名称 = "微软雅黑";
            字体大小 = 32;
            字体颜色 = Brushes.Green;
            定时刷新 = true;
            定时刷新毫秒 = 1000;
        }

        public string 显示名称
        {
            get { return _显示名称; }
            set { SetProperty(ref _显示名称, value); }
        }
        public string 显示文字
        {
            get { return _显示文字; }
            set { SetProperty(ref _显示文字, value); }
        }

        public string 时间格式
        {
            get { return _时间格式; }
            set { SetProperty(ref _时间格式, value); }

        }

        public string 字体名称
        {
            get { return _字体名称; }
            set { SetProperty(ref _字体名称, value); }

        }

        public double 字体大小
        {
            get { return _字体大小; }
            set
            {
                if (value < 6)
                {
                    return;
                }
                SetProperty(ref _字体大小, value);
            }

        }
        [XmlIgnore]
        public SolidColorBrush 字体颜色
        {
            get { return _字体颜色; }
            set { SetProperty(ref _字体颜色, value); }

        }

        public string 字体颜色s
        {
            get { return (字体颜色).Color.ToString(); }
            set { NJT.转换.属性转换(x => 字体颜色 = x, NJT.转换.颜色转换, value); }
        }

        public bool 定时刷新
        {
            get { return _定时刷新; }
            set { SetProperty(ref _定时刷新, value); }

        }

        public int 定时刷新毫秒
        {
            get { return _定时刷新毫秒; }
            set { SetProperty(ref _定时刷新毫秒, value); }

        }
    }
}
